//
//  WLRecallModel.h
//  WanLian
//
//  Created by 123456 on 2018/12/27.
//  Copyright © 2018 wanlian. All rights reserved.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN
typedef void (^ProgressBlcok)(float);
typedef void (^DownloadProcessBlock)(float process, long expectedSize, long loadedSize);
typedef void (^SuccessBlock)(NSDictionary *successDict);
typedef void (^FailureBlock)(NSString *errorMsg, NSInteger errorTag);
typedef void (^ErrorBlock)(NSError *error);
@interface WLRecallModel : NSObject
@property (nonatomic, copy) ProgressBlcok progressBlcok;
@property (nonatomic, copy) DownloadProcessBlock downloadProgressBlcok;
@property (nonatomic, copy) FailureBlock faliureBlock;
@property (nonatomic, copy) SuccessBlock successBlock;
@property (nonatomic, copy) ErrorBlock errorBlock;
+ (instancetype)createWithProgressBlock:(ProgressBlcok)progressBlcok successBlock:(SuccessBlock)successBlock faliureBlock:(FailureBlock)faliureBlock;
+ (instancetype)createWithProgressBlock:(ProgressBlcok)progressBlcok successBlock:(SuccessBlock)successBlock faliureBlock:(FailureBlock)faliureBlock errorBlock:(ErrorBlock)err;
+ (instancetype)createWithDownloadProgressBlock:(DownloadProcessBlock)progressBlcok successBlock:(SuccessBlock)successBlock faliureBlock:(FailureBlock)faliureBlock errorBlock:(ErrorBlock)err;
@end

NS_ASSUME_NONNULL_END
